问的最多的问题:"一个基于 MINA 的应用看起来像什么"?本小节我们将来了解一下基于 MINA 的应用架构。我们收集了一些基于 MINA 的演示信息。
架构鸟瞰图
这里,我们可以看到,MINA 是你的应用程序 (可能是一个客户端应用或者一个服务器端应用) 和基础网络层之间的粘合剂,可以基于 TCP、UDP、in-VM 通信甚至一个客户端的 RS-232C 串行协议。
你要做的仅仅是在 MINA 之上设计你自己的应用实现,而无需处理网络层的那些复杂业务。
现在我们再深入细节探讨一下。下图演示了 MINA 内部的更多细节,这正是每个 MINA 组件做的事情:
(上图来自 Emmanuel Lécharny 简报 MINA in real life (ApacheCon EU 2009))
概况来讲,基于 MINA 的应用划分为三个层次:
因此,要想创建一个基于 MINA 的应用,你需要:
具体创建基本就是如此。
接下来我们会对服务器端架构以及客户端架构进行更加深入阅读。
当然,MINA 提供的东东不仅于此,你可能会注意其他的一些方面的内容,比如消息加密/解密,网络配置如何扩大规模,等等... 我们在以后的几章中会对这些方面进一步讨论。